#ifndef SWP_REALIZATION_GRAPHIC_ITEM_H
#define SWP_REALIZATION_GRAPHIC_ITEM_H

#include "abstractlinegraphicitem.h"

namespace swp
{

class SwpRealizationGraphicItem : public AbstractLineGraphicItem
{
public:
    SwpRealizationGraphicItem(QGraphicsItem* parent = 0);
    SwpRealizationGraphicItem(const QPointF& startPoint,
        const QPointF& endPoint,
        const QList<QPointF>& anchors = QList<QPointF>(),
        QGraphicsItem* parent = 0);
    ~SwpRealizationGraphicItem();

    int type() const;

    QString name() const;

    core::IEditorItem* copy() const;

    // IPropertyObject
    QList<core::Property> properties() const;

    QVariant propertyValue(const QString& propertyName) const;

    void propertyChanged(const QString& property,
        const QVariant& newValue, bool silent = false);

    QVariantList optionList(const QString& propertyName) const;
    QVariantList autocomplete(const QString& propertyName) const;

private:
    void createArrows();
};

}

#endif
